package model

import "time"

type AccessLog struct {
	ID          string `json:"id,omitempty" bson:"_id,omitempty"` //主键ID（必须）
	AID         string `json:"aid" bson:"aid"`                    //请求ID
	HandlerName string `json:"handlerName" bson:"handlerName"`    //执行方法名
	Path        string `json:"path" bson:"path"`                  //请求Path (不含'?参数'的uri==path)
	HttpMethod  string `json:"httpMethod" bson:"httpMethod"`      //HTTP方法

	XHeaders   string `json:"x-headers" bson:"x-headers"`   //headers(x-)
	Params     string `json:"params" bson:"params"`         // 请求参数（form参数 or body参数）
	CostMillis int    `json:"costMillis" bson:"costMillis"` //耗时(毫秒)
	ClientIp   string `json:"clientIp" bson:"clientIp"`     //客户端IP

	CreateTime time.Time `json:"createTime,omitempty" bson:"createTime,omitempty"` //文章创建时间

	FullUri string `json:"uri" bson:"-"` //请求URI

}

const AccessLogCollectionName = "access_log" // 集合名常量
